// 管理员相关的路由
// 引入express
const express = require('express')
// 引入md5加密
const md5 = require('md5')
// 引入操作管理员数据的model
const adminModel = require('../db/models/admin')

// 创建路由器中间件
const router = express.Router()

// 配置路由

// 添加管理员
router.post('/addAdmin', async (req, res) => {
  // 获取上传的管理员信息
  let { username, password } = req.body

  // 对密码进行加密
  password = md5(password)
  // 添加到数据库中
  // 响应给用户,表示添加成功(注册成功)
  try {
    // 注意: 用户注册时,应该将用户的密码加密之后再存储到数据库中
    await adminModel.create({ username, password })
    res.send({ code: 2, message: '管理员添加成功', status: true, data: null })
  } catch (error) {
    res.send({ code: 1, message: '管理员添加失败', status: false, data: null })
  }
})

// 获取管理员的数据

router.get('/getAdmin', async (req, res) => {
  // 查询数据库
  // 将查询到的数据传递给浏览器
  try {
    const admins = await adminModel.find({})
    res.send({ code: 2, message: '管理员查询成功', status: true, data: admins })
  } catch (error) {
    res.send({
      code: 1,
      message: '管理员查询失败',
      status: false,
      data: null,
    })
  }
})

// 导出路由器中间件
module.exports = router
